Дослідження похибки інтерполяції функцій многочленом Ньютона

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2010
Тип роботи:
Лабораторна робота
Предмет:
Інші

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” / Лабораторна робота №4 Тема: «Дослідження похибки інтерполяції функцій многочленом Ньютона» Завдання: Для функції  заданої на рівномірній сітці в точках  на інтервалі  знайти аналітичний вираз залишкового члена інтерполяційного многочлена; обчислити його максимальне значення і значення в точках ; побудувати інтерполяційний многочлен Ньютона через розділені різниці; обчислити похибки інтерполяції у точках  і порівняти їх із значеннями залишкового члена. N      18  3 0 2   Короткі теоретичні відомості Замінюючи функцію  інтерполяційним многочленом , ми припускаємо похибку , яка називається похибкою інтерполяції або, що те ж саме, залишковим членом інтерполяційної формули. Ясно, що у вузлах інтерполяції ця похибка дорівнює нулю. Похибку інтерполяції можна подати у вигляді , де  і залежить від x. Звідси випливає оцінка , де , . 1. і 2. Знаходження аналітичного виразу залишкового члена інтерполяційного многочлена і обчислення його максимального значення і значення в точках  за допомогою пакету Maple 12. > / > / / > / / > / / > / / > / / > / / > / / > / / > / / > / / > / / > / / > / / > / / > / / > / / > / / > / / > / / > / 3. і 4. Побудова інтерполяційного многочлена Ньютона і обчислення похибок інтерполяції в точках  за допомогою мови програмування С++. Код програми: #include <iostream.h> #include <math.h> #define k 4 const double X[k] = {0.000, 0.666, 1.333, 2.0}; const double x1 = 0.233, x2 = 1.109, x3 = 1.894; double Rozd_Rizn[k]; double F[k]; void Calc_Rozd_Rizn(); double Calc_Func(double); double f(double); void main() { for(int i = 0; i < k; i++) F[i] = f(X[i]); cout<<" x\t F(x)\n"; for(i = 0; i < k; i++) cout<<X[i]<<"\t"<<F[i]<<endl; cout<<"\nx1 = "<<x1<<endl <<"x2 = "<<x2<<endl <<"x3 = "<<x3<<endl; Calc_Rozd_Rizn(); //for(i = 0; i < k; i++) // cout<<Rozd_Rizn[i]<<endl; cout<<endl; cout<<"Rn(x1) = "<<fabs(f(x1) - Calc_Func(x1))<<endl <<"Rn(x2) = "<<fabs(f(x2) - Calc_Func(x2))<<endl <<"Rn(x3) = "<<fabs(f(x3) - Calc_Func(x3))<<endl; } void Calc_Rozd_Rizn() { for(int i = 0; i < k; i++) { Rozd_Rizn[i] = 0; for(int j = 0; j < i + 1; j++) { double temp = 1; for(int l = 0; l < i + 1; l++) if(l != j) temp = temp * (X[j] - X[l]); Rozd_Rizn[i] += F[j] / temp; } } } double Calc_Func(double x) { double Ln = 0; for(int i = 1; i < k + 1; i++) Ln = (x - X[k - i]) * Ln + Rozd_Rizn[k - i]; return Ln; } double f(double x) { double func = 2 * log(x + 2); return func; } Результат виконання програми: / Висновок: В процесі виконання даної лабораторної роботи я дослідив похибки інтерполяції функції многочленом Ньютона. Їх значення і значення залишкового члена у точках  дещо відрізняються, проте похибки все-одно менші за максимальне значення залишкового члена обчислене в Maple.
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини